package com.guigu.qingcheng.service;

import com.guigu.qingcheng.pojo.TbUser;
import com.guigu.qingcheng.pojo.vo.NewuserVo;
import com.guigu.qingcheng.utils.PageUtil;

import java.util.List;
import java.util.Map;


/**
*
* @author Jiang
* @date 2020/08/05
*/
public interface TbUserService {

    /**
     * 查询新增
     */
    Map findnewuser(NewuserVo newuserVo);
    /**
     * 查询所有所有会员
     */
    Map finduser();
    /**
    * 查询所有
    */
    List<TbUser> queryAll();

    /**
    * 分页查询所有
    */
    PageUtil<TbUser> findListAll(Integer pageNum, Integer pageSize);


    /**
    * 按条件分页查询
    */
    PageUtil<TbUser> pageQueryByAll(Integer pageNum, Integer pageSize, TbUser tbUser);


    /**
    * 添加
    */
    boolean saveTbUser(TbUser tbUser);


    /**
    * 修改
    */
    boolean updateTbUser(TbUser tbUser);

    /**
    * 删除
    */
    boolean deleteById(String username);


    /**
    * 根据id查询
    */
    TbUser findById(String username);

    /**
     * 根据id查询
     */
    TbUser findById(Integer id);

    /**
     * 发送短信验证码
     * @param mobile
     */
    public void sendSms(String mobile);

    /**
     * 增加
     * @param tbUser
     * @param smsCode
     */
    public void add(TbUser tbUser,String smsCode);

    //登陆
    String login(TbUser tbUser);

    //根据token获取用户信息
    /**
     * 根据openid判断
     * @param openid
     * @return
     */
    TbUser getByOpenid(String openid);

    /**
     * 通过用户名修改密码
     * @param user
     */
    void updatePasswordByUsername(TbUser user);
}
